﻿using B.S.BataBase.Domain.AI;
using B.S.BataBase.Domain.Entitys;
using B.S.BataBase.Domain.Hosp;
using B.S.BataBase.Domain.RBAC;
using Microsoft.EntityFrameworkCore;
using WorkOrder.Domain;

namespace B.S.BaseData.Infrastructure
{
    public class BaseDbContext : DbContext
    {
        public BaseDbContext(DbContextOptions options) : base(options)
        {
        }

        #region RBAC
        public DbSet<UserModel> UserModel { get; set; }
        public DbSet<RoleModel> RoleModel { get; set; }
        public DbSet<UserRoleModel> UserRoleModel { get; set; }
        public DbSet<PermissionsModel> PermissionModel { get; set; }
        public DbSet<RolePermissionsModel> RolePermissionsModel { get; set; }
        #endregion

        #region  智慧医疗
        /// <summary>
        /// 医生表
        /// </summary>
        public DbSet<DoctorModel> DoctorModel { get; set; }
        /// <summary>
        /// 医保表
        /// </summary>
        public DbSet<HealthCareModel> HealthCareModel { get; set; }
        /// <summary>
        /// 就诊信息类
        /// </summary>
        public DbSet<HistoryOfMedicalVisitsModel> HistoryOfMedicalVisitsModel { get; set; }
        /// <summary>
        /// 身份证表
        /// </summary>
        public DbSet<IdentityModel> IdentityModel { get; set; }
        /// <summary>
        /// 患者信息实体类
        /// </summary>
        public DbSet<PatientModel> PatientModel { get; set; }
        /// <summary>
        /// 就诊类型表
        /// </summary>
        public DbSet<VisitTypeModel> VisitTypeModel { get; set; }

        #endregion

        #region 医院管理
        /// <summary>
        /// 轮播图实体
        /// </summary>
        public DbSet<CarouselImage> CarouselImage { get; set; }

        /// <summary>
        /// 医院实体
        /// </summary>
        public DbSet<Hospital> Hospital { get; set; }

        /// <summary>
        /// 科室实体
        /// </summary>
        public DbSet<Department> Department { get; set; }
        #endregion

        #region 订单
        public DbSet<ConsultationOrder> ConsultationOrders { get; set; }
        public DbSet<MedicineOrder> MedicineOrders { get; set; }
        public DbSet<PrescriptionOrder> PrescriptionOrders { get; set; }
        public DbSet<PrescriptionMedicine> PrescriptionMedicines { get; set; }
        public DbSet<RefundApplication> RefundApplications { get; set; }
        public DbSet<RegistrationOrder> RegistrationOrders { get; set; }
        #endregion

        #region  溯源兔
        public DbSet<GoodsInfo> GoodsInfo { get; set; }
        public DbSet<GoodschargeInfo> GoodschargeInfo { get; set; }
        public DbSet<GoodscultivationCompany> GoodscultivationCompany { get; set; }
        public DbSet<GoodscultivationInfo> GoodscultivationInfo { get; set; }
        public DbSet<GoodsslaughterInfo> GoodsslaughterInfo { get; set; }
        public DbSet<GoodsProcessingInfo> GoodsProcessingInfo { get; set; }
        public DbSet<GoodsslaughterInfoCompany> GoodsslaughterInfoCompany { get; set; }
        public DbSet<GoodsvendorInfo> GoodsvendorInfo { get; set; }
        public DbSet<GoodsType> GoodsType { get; set; }
        public DbSet<ImgInfo> ImgInfo { get; set; }
        public DbSet<GoodshealthInfo> GoodshealthInfo { get; set; }
        public DbSet<GoodsvendorAccessories> GoodsvendorAccessories { get; set; }
        public DbSet<Goodsvendoradditive> Goodsvendoradditive { get; set; }
        public DbSet<GoodsvendPackagingmaterials> GoodsvendPackagingmaterials { get; set; }
        #endregion
    }
}